package com.coocaa.ops.api.v1.content.mapper;

import com.coocaa.ops.api.v1.content.model.internal.PanelContentInfo;
import com.coocaa.ops.api.v1.content.model.internal.PanelSimpleInfo;
import com.coocaa.ops.api.v1.content.model.internal.PanelSimpleInfoWithDmp;
import com.coocaa.ops.common.core.biz.cornericon.entity.GlobalCornerIconEntity;
import com.coocaa.ops.common.core.biz.panel.entity.BlockContentConfigInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author tangminghong
 * @date 2020-06-29
 */
public interface IPanelInfoMapper {

    List<PanelSimpleInfo> queryAllPanelsByTab(@Param("tabId") Integer tabId);

    List<PanelSimpleInfo> queryAllPanelsByTabForTestPolicy(@Param("tabId") Integer tabId);

    List<PanelSimpleInfoWithDmp> queryAllDmpPanelsByTab(@Param("tabId") Integer tabId);

    List<PanelSimpleInfoWithDmp> queryAllDmpPanelsByTabForTestPolicy(@Param("tabId") Integer tabId);

    PanelContentInfo queryPanelContent(@Param("panelId") Integer panelId, @Param("panelVersion") Integer panelVersion);

    //PanelContentInfo queryPanelContentForTestPolicy(@Param("panelId") Integer panelId);

    PanelContentInfo querySubPanelContent(@Param("panelId") Integer panelId, @Param("panelVersion") Integer panelVersion, @Param("subPanelSeq")Integer subPanelSeq);

    List<BlockContentConfigInfo> queryAllDmpBlocksByPanel(@Param("panelId") Integer panelId, @Param("panelVersion") Integer panelVersion);

    List<BlockContentConfigInfo> queryAllDmpBlocksBySubPanel(@Param("panelId") Integer panelId, @Param("panelVersion") Integer panelVersion, @Param("subPanelSeq")Integer subPanelSeq);

    //List<BlockContentInfoWithDmp> queryAllDmpBlocksByPanelForTestPolicy(@Param("panelId") Integer panelId);

    GlobalCornerIconEntity queryCornerIcon(@Param("cornerIconId") Integer cornerIconId);
}
